package cn.iocoder.yudao.module.system.controller.admin.mini.group.goods.dal.dataobject.groupgoods;

import cn.iocoder.yudao.module.system.controller.admin.mini.goodInfo.goods.controller.admin.goods.vo.GoodContentVo;
import cn.iocoder.yudao.module.system.controller.admin.mini.goodInfo.goods.controller.admin.goods.vo.GoodSpecif;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 拼团商品 DO
 *
 * @author 芋道源码
 */
@TableName(value = "qd_group_goods",autoResultMap = true)
@KeySequence("qd_group_goods_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class GroupGoodsDO extends BaseDO {

    /**
     * id主键
     */
    @TableId
    private Integer id;
    /**
     * 商品id
     */
    private Integer goodsId;
    /**
     * 商品详情
     */
    @TableField(typeHandler = FastjsonTypeHandler.class)
    private List<GoodSpecif> goodsInfo;
    /**
     * 商品名称
     */
    private String goodsName;
    /**
     * 拼团名称
     */
    private String name;
    /**
     * 拼团模块id
     */
    private Integer groupId;
    /**
     * 开始时间
     */
    private LocalDateTime startTime;
    /**
     * 结束时间
     */
    private LocalDateTime entTime;
    /**
     * 设置数量(备注:该活动的设定库存)
     */
    private Integer setUpNum;
    /**
     * 活动库存
     */
    private Integer actNum;
    /**
     * 已售库存
     */
    private Integer soldNum;
    /**
     * 状态0未审核1上架2下架3已结束
     */
    private Integer status;
    /**
     * 拼团人数
     */
    private Integer groupPerson;
    /**
     * 已拼团人数
     */
    private Integer buyPerson;
    /**
     * 拼团有效期
     */
    private Integer groupHour;
    /**
     * 是否允许单独购买0否1是
     */
    private Integer isAlone;
    /**
     * 是否自动成团0否1是
     */
    private Integer isGroup;
    /**
     * 图片
     */
    @TableField(typeHandler = FastjsonTypeHandler.class)
    private List<String> img;

    /**
     * 商品描述
     */
    @TableField(typeHandler = FastjsonTypeHandler.class)
    private List<GoodContentVo> content;
    /**
     * 拼团描述
     */
    private String details;
}
